<template>
  <div ref="rootRef">
    <slot></slot>
  </div>
</template>

<script>
import useScroll from './use-scroll'
import { ref } from 'vue'
export default {
  name: 'scroll',
  props: {
    click: {
      type: Boolean,
      default: true
    },
    // probeType 主要有 0|1|2 三个值， 值越大，滚动效果监听的更加灵活, 0代表不监听， 大于0代表实时的去派发事件
    // probeType: 1 滚动的时候会派发scroll事件，会截流。2滚动的时候实时派发scroll事件，不会截流。 3除了实时派发scroll事件，在swipe(动画时候)的情况下仍然能实时派发scroll事件
    probeType: {
      type: Number,
      default: 0
    }
  },
  // emits 只能发送这个值
  emits: ['scroll'],
  setup(props, context) {
    const rootRef = ref(null)
    const scroll = useScroll(rootRef, props, context.emit)
    return {
      rootRef,
      scroll
    }
  }
}
</script>

<style></style>
